# 定义字典
# 方式一：
# dic = dict((('one', 1), ('two', 2), ('three', 3)))
# print(dic)  # {'one': 1, 'two': 2, 'three': 3}

# 方式二：
# dic = dict(one=1, two=2, three=3)
# print(dic)

# # 方式三：
# dic = {'one': 1,
#        'two': [2, 3],
#        'three': (1, 2),
#        'dict': {'a': 'a', 'b': 'b'}}
# print(dic)

# # 字典的嵌套
# dic = {
#     'name': '汪峰',
#     'age': 48,
#     'wife': [{'name': '国际章', 'age': 38},],
#     'children': {'girl_first': '小苹果','girl_second': '小怡','girl_three': '顶顶'}
# }
# print(dic)

# 获取字典中元素
# dic = {
#     'name': '汪峰',
#     'age': 48,
#     'wife': [{'name': '国际章', 'age': 38},],
#     'children': {'girl_first': '小苹果','girl_second': '小怡','girl_three': '顶顶'}
# }
# print(dic['age'])
# print(dic.get('name'))

# 修改字典某个元素
# dic1 = {
#     'name': '坚果',
#     'age': 18
# }
# print(dic1)
# dic1['name'] = '习知_坚果'
# print(dic1)

# # 同时有多个数据实现修改
# info1={'name':"郭然然","id":"ms230","adress":"上海"}
# info2={'name':"郭然然2","pre_xz":"15k","bre_xz":"20k","gs":"zjtd"}
# # # info1.update(info2)
# # print(info1)
# del info1['name']
# print(info1)

# 常用函数
info = {'a':1, 'b':'B'}
# print(len(info))	# 获取字典长度
# print(str(info))	# 字典转化为字符串
# print(info.values())	# 获取字典所有的value,返回的不是元组或列表,是一个可迭代对象
# info.popitem()	# 删除字典中最后的一对键值对
# print(info.popitem()) # 删除字典中最后的一对键值对,并将其键值对多为元组返回
# print(info.pop('b1', 'abcdefg'))	# 根据给定的key进行删除,需要传两个参数,(需删除的key,找不到key返回信息),如果找到了删除的key,删除对应键值对,并返回value值,如果找不到需要删除的键值对,返回信息
# print(info)
# print(info.keys())	# keys列出所有键
# print(info.items())	# 同时获取key,value的值
# print(info.get('age'))	# 取出指定键的值，没有的元素不会抛异常
# print(info['age'])  # 取出指定键的值，没有的元素会抛异常
# print({}.fromkeys('name', 100))	# 创建字典
# a = info.setdefault('sex', 'M')
# print(info)
# print(a)	# 类似get方法，获取元素的值，但是当key不存在，则添加key并，默认为None，否则取默认值
# print(info.copy())	# 复制字典，浅copy
# info.clear()	# 清空内容
# print(info)